C++标准库包含许多模板，这些模板通常只用于基本类型。例如，std::basic\_string类模板最常与char(std::string是std::basic\_string<char>的类型别名)或wchar\_t一起使用，可以用其他类似字符的类型实例化。因此，标准库实现通常会为这些常见情况引入显式的实例化声明。例如:

\begin{lstlisting}[style=styleCXX]
namespace std {
	template<typename charT, typename traits = char_traits<charT>,
	typename Allocator = allocator<charT>>
	class basic_string {
		...
	};
	extern template class basic_string<char>;
	extern template class basic_string<wchar_t>;
}
\end{lstlisting}

实现标准库的源文件将包含显式实例化定义，这些公共实现可以在标准库的所有用户间共享。类似的显式实例化通常存在于各种流类中，例如basic\_iostream、basic\_istream等。